package com.yzy.mall.repository

import android.annotation.SuppressLint
import android.os.Parcelable
import kotlinx.android.parcel.Parcelize

data class CardDataBean(
    val limitedstatus: String,
    val mechanism_limitedstatus: String,
    val mechanism_query: Any,
    val person_limitedstatus: String,
    val person_query: Any,
    val violation_record: List<ViolationRecord>? = mutableListOf()
)

@SuppressLint("ParcelCreator")
@Parcelize
data class ViolationRecord(
    val buy_number: Int? = 0,
    val single_integral: Int? = 0,
    val buy_points: Int? = 0,
    val wine_price: Double = 0.0,
    val preferential_amount: Double? = 0.0,
    val commodity_freight: Double? = 0.0,
    val buy_wine_name: String? = null,
    val user_name: String? = null,
    val phone_no: String? = null
) : Parcelable

@SuppressLint("ParcelCreator")
@Parcelize
data class CardBean(
    val limitedstatus: String? = null,
    val mechanism_limitedstatus: String? = null,
    val mechanism_query: String? = null,
    val person_limitedstatus: String? = null,
    val person_query: PersonQuery? = null,
    val violation_record: MutableList<ViolationRecord>? = mutableListOf(),
    val isMember: Boolean? = false,
    val memberInfo: MemberInfo? = null
) : Parcelable

@SuppressLint("ParcelCreator")
@Parcelize
data class InfoBean(
    val isMember: Boolean? = false,
    val memberInfo: MemberInfo? = null
) : Parcelable

@SuppressLint("ParcelCreator")
@Parcelize
data class MemberInfo(
    val accumulatedPoints: Int? = 0,
    val idCard: String? = null,
    val phoneNo: String? = null,
    val receivingAddress: String? = null,
    val residualPoints: Int? = 0,
    val updateTime: String? = null,
    val userName: String? = null
) : Parcelable

@SuppressLint("ParcelCreator")
@Parcelize
data class PersonQuery(
    val registrationChannel: String? = null,
    val recordId: String? = null,
    val phoneNo: String? = null,
    val idCard: String? = null,
    val lockType: String? = null,
    val lockDateS: String? = null,
    val lockDateE: String? = null,
    val pullbackTime: String? = null,
    val userName: String? = null
) : Parcelable


